Discordのslash commandは必ず「事前定義されたオプション」にしか値を入れられない
from 画像からカレンダーに予定を登録するdiscord botを作る
Discordのslash commandは必ず「事前定義されたオプション」にしか値を入れられない
基素.iconslashコマンドでオプションを選択するのがだるい!
一手間ふえるので嫌
GPT-5.icon Discordのslash commandは必ず「事前定義されたオプション」にしか値を入れられない。だから /slash aaa という書き方はできない。必ず /slash text: aaa みたいにオプション名がUIに出る。
Discordのslash commandは入力時にUI補完を出す仕組みで、勝手に「余分な文字列」を入れる仕様がない
基素.icon画像と文章両方送りたい
GPT-5.icon
Discordのslash command 単体では画像と文章を同時に引数として送ることはできない。
理由:
Slash command のオプションには STRING, INTEGER, BOOLEAN, USER, CHANNEL, ROLE, MENTIONABLE, NUMBER, ATTACHMENT がある
画像を渡したい場合は ATTACHMENT オプションを使う必要がある
でも1つのオプションに「文字列+画像」をまとめて渡すことは不可能
つまり「STRINGオプション」と「ATTACHMENTオプション」を別々に定義するしかない
実現方法:
コマンド定義例: /post text: <文章> image: <画像>
ユーザーは入力UIで文章を打ち、同時に画像ファイルを添付して送信できる
Bot側では options.getString("text") と options.getAttachment("image") を両方取得できる